<template>
	<view class="map-layout" v-if="loginStatus">
		<view class="naviagtionBarView" :style="getNavigationBarStyle()">
			<view class="statusBar" :style="getStatusStyle()"></view>
		</view>


		<view class="bodyContent">
			<view class="map-body">
				<web-view :fullscreen="true" :webview-styles="{width:'100%', height:'100%'}"
					:style="{width:'100%', height:'100%'}" ref="webview" id="webview"
					src='../../static/html/googletest.html' @message="handleMessage" @load="onWebviewLoad">
				</web-view>
			</view>

			<cover-view class="popCover" v-if="showCover" @click="hideCover">
				<cover-view class="status-bg">

				</cover-view>
			</cover-view>


		</view>
	</view>

</template>

<script>
	import {
		apiGetDevicePosition,
		apiGetDeviceFenceList,
		apiDeviceSendCmd,
		apiTestPush,
		apiDeviceList
	} from '../../api/device_api';
	import {
		bottomTabbarHeight,
		getNavBarHeight,
		getStatusBarHeight,
		getTitleBarHeight,
		isIOSPlatFrom
	} from '../../utils/system';
	import {
		navGoogleMap
	} from '../../utils/to_google_map';
	import store from '../../store';
	import push from '../../utils/push';
	import {
		getDeviceStatus
	} from '../../utils/device_status';
	import {
		getImei,
		getToken,
		getUserId,
		hasDevice
	} from '../../utils/user_tools';
	import {
		createAlarm
	} from '../../utils/nativeMsg.js';
	import {
		i18nTool
	} from '../../utils/i18en';
	import {
		getDistanceBetweenLatLng
	} from '../../utils/get_distance';

	import {
		HomePopupTypeEnum
	} from "../../utils/popup_type.js";
	var wv;

	export default {

		created() {

		},
		data() {
			return {
				imei: null,
				showCover: false,
				status: null,
				resData: {},
				batteryPercent: 10,
				webloadFinish: false,
				loginStatus: null,
				intervalId: null,
				wsClient: null,
				websocketData: null,
				timeOut: null,
				sendCRTimeOut: null,
				fromCRRefresh: false,
				msgList: [],
				fenceList: [],
				addTrackPopTitle: null, //i18nTool("map.addTrackPopTitle"),
				addTrackPopContent: null, //i18nTool("map.addTrackPopContent"),
				addTrackPopOkBtn: null, //i18nTool("map.addTrackPopOkBtn"),
				addTrackPopCancelBtn: i18nTool("map.addTrackPopCancelBtn"),
				popupType: null,
				isShowPopCancelBtn: true,
				isShare: null, //是否是分享的设备 1:分享  2：绑定
				isPopping: false, //是否有弹框存在
				subNVue: null,
				isShowLowBatteryPop: true, //低电
				isShowOutFencePop: true, //出围栏
				isShowUnbindingPop: true, //解绑
				isShowRenewPop: true, //到期续费
				isShowSosPop: true,
				isShowOffLinePop: true,
				isUserHasDevice: null,
				isOpenTrackerAndHasData:false,
				findIdtimeOut:null,
			}
		},
		computed: {
			getData() {
				return store.getters.homeData;
			},
			getImeiStatus() {
				return store.getters.isClearImei;
			},
			getWSConnectStatus() {
				return store.getters.isConnectWebSocket;
			},
			getNewImei() {
				return store.getters.newImei;
			},
			getFindId(){
				return store.getters.findId;
			}
		},
		watch: {
			getData: {
				deep: true,
				handler(newval, oldval) {
					console.log("newval==", newval);
		
					if (this.sendCRTimeOut) {
						clearTimeout(this.sendCRTimeOut);
					}
					if (this.fromCRRefresh) {
						uni.hideLoading();
						this.fromCRRefresh = false;
						uni.showToast({
							icon: 'none',
							title: i18nTool('map.refreshSuccess'),
						})
					}
					
					//==0 第一次未知状态  表明未开机   开机接收上报的数据  提示各种设置  
					if(newval.dvState == 2 && this.resData.liveMode == 0){
						this.showDeviceSetFunction();
					}else{
						//开机后  各种提醒 
						if (!this.isPopping && newval.lat != null) {
							
							if (newval.liveMode == 7 || newval.liveMode == 8 || newval.liveMode == 9) {
								this.showSOSRemindPop();
							} else if (newval.liveMode == 39) {
								this.showOfflinePop()
							} else if (newval.liveMode == 3) {
								this.showLowbatteryPop()
							} else if (newval.liveMode == 4 && !this.isShare) {
								this.showRenewPop()
							} else {
								this.judgeWhetherDeviceIsInFenceList(newval.lat, newval.lng)
							}
						}
					}
					
					if (newval.lat != null || newval.lng !=null) {
						this.resData.lat = newval.lat;
						this.resData.lng = newval.lng;
						this.resData.gpsFlag = newval.gpsFlag;
						this.resData.speed = newval.speed;
						this.resData.dl = newval.dl;
						this.resData.radius = newval.radius;
						this.resData.liveMode = newval.liveMode;
						this.resData.dvState = newval.dvState;
						this.resData.locTime = newval.locTime;
						let data = {
							msg: this.resData,
							type: 1,
						}
						this.postMessage(data);
					} 
					
						
				},
			},
			getImeiStatus: {
				deep: true,
				handler(newval, oldval) {
					if (newval == true) {
						this.imei = getImei();
					}
				}
			},
			//连接上长链接  开始倒计时  1分钟无数据 弹出提示框 
			getWSConnectStatus: {
				deep: true,
				handler(newval, oldval) {
					if (newval) {

					}
				}
			},
			getNewImei: {
				deep: true,
				handler(newval, oldval) {
					if (newval) {
						this.isShowLowBatteryPop = true //低电
						this.isShowOutFencePop = true //出围栏
						this.isShowUnbindingPop = true //解绑
						this.isShowRenewPop = true //到期续费
						this.isShowSosPop = true
						this.isShowOffLinePop = true
						
						var data = {
							msg: false,
							type: 5, //告诉html 重新选择了 
						}
						this.postMessage(data);
					}
				}
			},
			getFindId:{
				deep:true,
				handler(newval,oldval){
					uni.hideLoading();
					if (findIdtimeOut) {
						clearTimeout(findIdtimeOut);
					}
					uni.showToast({
						title: i18nTool("function.cmdSendSuc"),
						icon: 'none'
					})
				}
			}

		},
		onLoad() {
			this.loginStatus = getToken();
			this.imei = getImei();

			if (this.loginStatus) {
				this.isUserHasDevice = hasDevice();
				let authorization = getUserId() + ';;' + getToken();
				store.commit('websocketConnect', authorization);
			}
			this.subNVue = uni.getSubNVueById('customDialog');

		},
		onReady() {
			uni.setNavigationBarColor({
				backgroundColor:"#4cd964"
			})
			uni.$on('subNVueOkAction', (params) => {
				this.subNVue.hide();
				this.isPopping = false;
				if (params.content == 'confirm') {
					this.onConfirm();
				}
			});
			uni.$on("loginStatusChange", (params) => {
				clearTimeout(this.timeOut);
			});
			
		},
		onUnload() {
			this.popupType = null
			if (this.sendCRTimeOut) {
				clearTimeout(this.sendCRTimeOut)
			}
			if (this.timeOut) {
				clearTimeout(this.timeOut);
			}
		},
		onShow() {
			this.imei = getImei();
			if (this.webloadFinish) {
				this.feachData();
			}
			if (this.loginStatus && this.imei) {
				var sendMsg1 = {
					imei: this.imei,
					type: 1
				}
				this.timeOut = setTimeout(() => {
					store.commit('webSocketSend', sendMsg1, );
					// this.remindPowerCountDown();
				}, 5000)
			} else if (this.loginStatus && !this.imei) {
				//如果没添加设备  弹出提示 添加设备的提示
				this.timeOut = setTimeout(() => {
					if (this.isUserHasDevice) {
						this.showSelectTrackerPop()
					} else {
						this.showAddTrackerPop()
					}

				}, 500)
			}

		},
		onHide() {

			if (this.loginStatus && this.imei) {
				let authorization = getUserId() + ';;' + getToken();
				var sendMsg2 = {
					imei: this.imei,
					type: 40
				}
				store.commit('webSendClose', sendMsg2, authorization);
			}
			if (this.sendCRTimeOut) {
				clearTimeout(this.sendCRTimeOut)
			}
			if (this.timeOut) {
				clearTimeout(this.timeOut);
				this.fromCRRefresh = false;
			}
			this.subNVue.hide();
			this.isPopping = false;
		},
		methods: {
			//显示弹框 
			openSubNVuePop() {
				this.subNVue.show('slide-in-top', 100, () => {
					this.isPopping = true;
					uni.$emit('subNVueParams', {
						title: this.addTrackPopTitle,
						content: this.addTrackPopContent,
						okbtnText: this.addTrackPopOkBtn,
						showCancel: this.isShowPopCancelBtn,
						cancelText: this.addTrackPopCancelBtn,
					});
				});
			},
			//添加设备提示
			showAddTrackerPop() {
				if (this.isPopping) {
					return;
				}
				this.addTrackPopTitle = i18nTool("map.addTrackPopTitle")
				this.addTrackPopContent = i18nTool("map.addTrackPopContent")
				this.addTrackPopOkBtn = i18nTool("map.addTrackPopOkBtn")
				this.isShowPopCancelBtn = true
				this.popupType = HomePopupTypeEnum.ADDTRACKER
				this.openSubNVuePop();
			},
			//添加设备提示
			showSelectTrackerPop() {
				if (this.isPopping) {
					return;
				}
				this.addTrackPopTitle = "选择设备"
				this.addTrackPopContent = "请先去设备列表选择设备"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = true
				this.popupType = HomePopupTypeEnum.SELECTTRACKER
				this.openSubNVuePop();
			},
			//添加设备提示
			showOpenSmartPop() {
				if (this.isPopping) {
					return;
				}
				this.popupType = HomePopupTypeEnum.OPENSMART
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "去功能页面开启Smart"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = true
				this.openSubNVuePop();
			},
			showNoTrackerDataPop() {
				if (this.isPopping) {
					return;
				}
				this.isShowPopCancelBtn = false;
				this.popupType = HomePopupTypeEnum.NODATA
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "你的设备还没有产生数据记录,请开机上报数据"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = true
				if (this.imei) {
					this.openSubNVuePop()
				}
			},
			//提示设置SOS 
			showSetSOSPop() {
				if (this.isPopping) {
					return;
				}
				this.popupType = HomePopupTypeEnum.SETSOS
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "请去设置SOS"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = true
				this.openSubNVuePop();
			},
			//提示设置围栏
			showSetFencePop() {
				if (this.isPopping) {
					return;
				}
				this.popupType = HomePopupTypeEnum.SETFENCE
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "请去设置围栏"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = true
				this.openSubNVuePop();
			},
			//低电提示
			showLowbatteryPop() {
				if (!this.isShowLowBatteryPop || this.isPopping) {
					return
				}
				this.popupType = HomePopupTypeEnum.LOWBATTERY
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "设备电量低,请充电"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = false
				this.openSubNVuePop();
			},
			//出围栏提示
			showOutFencePop() {
				if (!this.isShowOutFencePop || this.isPopping) {
					return
				}
				this.popupType = HomePopupTypeEnum.OUTFENCE
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "设备出围栏"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = false
				this.openSubNVuePop();
			},
			//解绑提示
			showUnbindingPop() {
				if (!this.isShowUnbindingPop || this.isPopping) {
					return
				}
				this.popupType = HomePopupTypeEnum.UNBINDING
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "设备解除绑定"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = false
				this.openSubNVuePop();
			},
			showGoSubscribed() {
				if (this.isPopping) {
					return;
				}
				this.popupType = HomePopupTypeEnum.SUBSCRIBED
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "设备尚未开通服务,请先开通服务"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = true
				this.openSubNVuePop();
			},
			//到期续费提示
			showRenewPop() {
				if (!this.isShowRenewPop || this.isPopping) {
					return
				}
				this.popupType = HomePopupTypeEnum.RENEW
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "订阅到期,请续费"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = true
				this.openSubNVuePop();
			},
			//sos提示
			showSOSRemindPop() {
				if (!this.isShowSosPop || this.isPopping) {
					return
				}
				this.popupType = HomePopupTypeEnum.SOSREMIND
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "设备紧急状态"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = false
				this.openSubNVuePop();
			},
			//设备离线提示
			showOfflinePop() {
				if (!this.isShowOffLinePop || this.isPopping) {
					return
				}
				this.popupType = HomePopupTypeEnum.OFFLINE
				this.addTrackPopTitle = "提示"
				this.addTrackPopContent = "设备已离线"
				this.addTrackPopOkBtn = "确定"
				this.isShowPopCancelBtn = false
				this.openSubNVuePop();
			},
			//popup 确认事件
			onConfirm() {
				switch (this.popupType) {

					case HomePopupTypeEnum.ADDTRACKER:
						uni.navigateTo({
							url: "/pages/add_device/register_device"
						})
						break;
					case HomePopupTypeEnum.SELECTTRACKER:
						uni.navigateTo({
							url: "/pages/device_list/device_list"
						})
						break;
					case HomePopupTypeEnum.NODATA:
						break;
					case HomePopupTypeEnum.SETSOS:
						uni.navigateTo({
							url: "/pages/function/sos-notify"
						})
						break;
					case HomePopupTypeEnum.OPENSMART:
						uni.switchTab({
							url: "/pages/function/function"
						})
						break;
					case HomePopupTypeEnum.SETFENCE:
						uni.navigateTo({
							url: "/pages/function/set-safe-area-map"
						})
						break;

					case HomePopupTypeEnum.LOWBATTERY:
						this.isShowLowBatteryPop = false;
						break;

					case HomePopupTypeEnum.OUTFENCE:
						this.isShowOutFencePop = false
						break;

					case HomePopupTypeEnum.UNBINDING:
						this.isShowUnbindingPop = false;
						break;

					case HomePopupTypeEnum.RENEW:
						this.isShowRenewPop = false;
						uni.navigateTo({
							url: "/pages/subscribe/subscribe?data=" + this.imei
						})
						break;
					case HomePopupTypeEnum.SUBSCRIBED:
						uni.navigateTo({
							url: "/pages/subscribe/subscribe?data=" + this.imei
						})
						break;
					case HomePopupTypeEnum.SOSREMIND:
						this.isShowSosPop = false;
						break;
					case HomePopupTypeEnum.OFFLINE:
						this.isShowOffLinePop = false;
						break;

					default:
						break;
				}
			},

			//判断设备是否处于围栏列表
			judgeWhetherDeviceIsInFenceList(lat, lng) {
				for (var index = 0; index < this.fenceList.length; index++) {
					var element = this.fenceList[index];
					var isInFenceList = getDistanceBetweenLatLng(lat, lng, element.lat, element.lng, element.radius)
					if (isInFenceList) {
						return
					} else {
						this.showOutFencePop();
					}
				}

			},
			async testPush() {
				let param = {
					title: "提示",
					content: "通知内容再好不过,你好再见再见",
					noticeType: '1',
				}
				let res = await apiTestPush(param);
			},
			//给webView发消息
			postMessage(msg) {
				// #ifdef APP-PLUS
				var currentWebview = this.$scope.$getAppWebview()
				let wv = currentWebview.children()[0];

				wv.evalJS(`getVueMessage(${JSON.stringify(msg)})`);
				// #endif
			},
			//接收处理H5传来的信息 
			handleMessage(evt) {

				console.log('接收到H5的消息：' + JSON.stringify(evt.detail));
				let recMsg = evt.detail.data[0];

				if (recMsg.msg == "navigation") {
					navGoogleMap(recMsg.address);
				} else if (recMsg.msg == "getDevicePostion") {
					this.sendCommand();
				} else if (recMsg.msg == 'getDeviceDeviceInfo') {
					this.getDeviceInfo();
				} else if (recMsg.msg == 'finishloaded') {
					this.webloadFinish = true;
					this.setWebviewHeight();
					this.feachData();
					this.getTrackerDeviceList();
				}else if(recMsg.msg == 'addTracker'){
					uni.navigateTo({
						url:"/pages/add_device/register_device"
					})
				}else if(recMsg.msg == 'playTrackerVoice'){
					this.sendFindCommand();
				}else if(recMsg.msg == 'selectTrackerMode'){
					uni.navigateTo({
						url:"/pages/function/set-device-mode"
					})
				}else if(recMsg.msg == 'contactTracker'){
					uni.navigateTo({
						url:"/pages/my/contact_us"
					})
				}else if(recMsg.msg == 'changeImei'){
					if(this.imei == recMsg.data){
						return;
					}else{
						this.imei = recMsg.data;
						let user = uni.getStorageSync('user');
						uni.setStorageSync(user.userId, recMsg.data);
						store.commit('setNewImei', recMsg.data);
						this.feachData();
					}
					
				}else if(recMsg.msg == 'selectTracker'){
					this.toDeviceList();
				}
			},
			async sendCommand() {
				var param = {
					imei: this.imei,
					cmd: "CR",
					params: "1"
				}
				let res = await apiDeviceSendCmd(param);
				if (res.status == 0) {
					uni.showLoading({
						mask: true,
						title: "Loading..."
					})
					this.fromCRRefresh = true;
					this.sendCRTimeOut = setTimeout(() => {
						uni.hideLoading();
						this.fromCRRefresh = false;
						uni.showToast({
							title: i18nTool('map.refreshFail'),
							icon: 'none',
						})
						var data = {
							msg: false,
							type: 4, //告诉html 命令设置失败
						}
						this.postMessage(data);
						clearTimeout(this.sendCRTimeOut);
					}, 30000)
				} else {
					var data = {
						msg: false,
						type: 4, //告诉html 命令设置失败
					}
					this.postMessage(data);
				}

			},
			setWebviewHeight() {
				// #ifdef APP-PLUS
				let height = 0;
				uni.getSystemInfo({
					success: sysinfo => {
						height = sysinfo.safeArea.height

						const currentWebview = this.$scope.$getAppWebview();
						const wv = this.$scope.$getAppWebview().children()[0];
						wv.setStyle({
							top: getStatusBarHeight(),
							height: height,
						});
						console.log("手机名称===",sysinfo.model,sysinfo);

					},
				});
				// #endif
			},
			getLocation() {
				return new Promise((resolve, reject) => {
					uni.getLocation({
						success: (res) => {
							resolve(res);
						},
						fail: reject
					});
				});
			},
			showAlarm(message) {
				console.log('message.dvName==', message.dvName)
				let alarmId = Date.now()
				let msg = {
					alarmId: alarmId,
					warningTypeStr: "报警消息",
					projectName: message.dvName,
					description: "设备离开设置的围栏!!!"
				};

				let alarmIns = createAlarm(msg, res => {
					const {
						type,
						result
					} = res;
					let idx = this.msgList.findIndex(it => result.alarmId === it.item.alarmId)
					if (idx > -1) {
						this.msgList.splice(idx, 1)
					}
					console.log('点击了紧急弹框')
					// uni.showToast({
					// 	title: `${type === "click" ? "点击了" : "上滑了"}`,
					// 	icon: "none"
					// });
				});
			},
			hideMsg(alarmId) {

				let idx = this.msgList.findIndex(it => alarmId === it.item.alarmId)
				this.msgList[idx].hide()
				this.msgList.splice(idx, 1)
			},
			async getLocationPermision() {

				try {
					const res = await this.getLocation();
					var phonePosition = {
						lat: res.latitude,
						lng: res.longitude
					};
					var data = {
						msg: phonePosition,
						type: 2,
					}
					this.postMessage(data);
				} catch (error) {
					// 错误处理
				}
				
			},

			getTopViewStyle() {
				return {
					height: getTitleBarHeight() + 'px'
				};
			},
			getNavigationBarStyle() {
				return {
					height: getStatusBarHeight() + getTitleBarHeight() + 'px'
				};
			},
			getStatusStyle() {
				return {
					height: getStatusBarHeight() + 'px'
				};
			},
			
			async getTrackerDeviceList(){
				let resData = await apiDeviceList();
				this.postMessage({
					msg: resData.content,
					type: 6,
				});
				
			},
			//设备列表
			toDeviceList() {
				uni.navigateTo({
					url: "/pages/device_list/device_list"
				})
			},
			showPopUp() {

				// this.showCover = true;
			},
			hideCover() {
				// this.showCover = false;
			},
			addDevice() {
				uni.navigateTo({
					url: "/pages/add_device/register_device"
				})
			},
			//弹框提示 设置 
			showDeviceSetFunction() {
				if (this.isShare == 2) {
					if (this.resData.subscribed == 0) {
						this.showGoSubscribed()
					} else if (this.resData.sos == 0) {
						this.showSetSOSPop()
					} else if (this.fenceList.length == 0) {
						this.showSetFencePop();
					} else if ((this.resData.stag == 0 || this.resData.stag == 3) && isIOSPlatFrom()) {
						this.showOpenSmartPop()
					}
				}
			},
			async feachData() {
				if (!this.imei) {
					this.postMessage({
						type: 7,
					});
					this.getLocationPermision();
					return
				}

				let res1 = await apiGetDevicePosition({
					imei: this.imei
				})
				this.resData = res1.content;


				let res2 = await apiGetDeviceFenceList({
					imei: this.imei,
				});
				this.fenceList = res2.content;

				this.postMessage({
					msg: this.fenceList,
					type: 3,
				});
				
				this.isShare = this.resData.bindMode;
				//接口 返回的未知 状态   且自己绑定的  提示开机  
				if ((this.resData.liveMode == 0 ||this.resData.lng== null) && this.isShare == 2) {
					this.showNoTrackerDataPop()
				} else {
					this.showDeviceSetFunction();
					this.postMessage({
						msg: this.resData,
						type: 1,
					});
				}
			},
			//获取设备当前信息
			async getDeviceInfo() {
				if (this.imei) {
					let res = await apiGetDevicePosition({
						imei: this.imei
					})
					this.resData = res.content;
					this.isShare = this.resData.bindMode;
					let data = {
						msg: this.resData,
						type: 1,
					}
					this.postMessage(data);

				} else {
					this.getLocationPermision();
				}
			},
			//获取设备状态
			getStatus(liveMode) {
				return getDeviceStatus(liveMode);
			},
			//获取围栏列表
			async getDeviceFenceList() {
				if (this.imei) {
					const param = {
						state: 1,
						imei: this.imei,
					}
					let res = await apiGetDeviceFenceList(param);
					this.fenceList = res.content;
					let data = {
						msg: this.fenceList,
						type: 3,
					}
					this.postMessage(data);
				}
			},
			
			async  sendFindCommand() {
				let param = {
					imei: this.imei,
					cmd: "FIND",
				}
				let res = await apiDeviceSendCmd(param);
				if (res.status == 0) {
					uni.showLoading({
						title: 'Loading...',
						mask: true
					})
					findIdtimeOut = setTimeout(function() {
						uni.hideLoading();
						uni.showToast({
							title: i18nTool('function.cmdSendFail'),
							icon: "none"
						})
					}, 10000);
				}
			}

		},
		mounted() {

		},
	}
</script>


<style lang="scss" scoped>
	.map-layout {
		.naviagtionBarView {
			width: 100vw;
			z-index: 100000000111;
			position: fixed;

			.statusBar {
				background-color: black;
				width: 100vw;
				opacity: 0.5;
			}
		}

		.bodyContent {
			.map-body {
				overflow: hidden;
			}

			.popCover {
				width: 100%;
				height: 100%;
				position: fixed;
				bottom: 0;

				.status-bg {
					height: 10%;
					width: 100%;
					background-color: #f6f6f6;
					position: absolute;
					bottom: 0;
					border-radius: 10rpx 10rpx 0 0;
				}
			}
		}


	}
</style>